package org.example.common;

import java.io.Serializable;
import java.util.List;
import java.util.Set;

/**
 * @author liyishan
 * @date 2023/4/18 16:34
 */


public class BaseSessionBean implements Serializable {
    private String userId;
    private String userName;
    private Integer userType;
    private Integer userIdentity;
    private Integer userState;
    private String sessionToken;
    private Integer roleId;
    private Set<String> uri;
    private String roleName;
    private Integer sysType;
    private String smsSessionId;
    private List<String> subUserIds;

    public BaseSessionBean() {
    }

    public String getUserId() {
        return this.userId;
    }

    public String getUserName() {
        return this.userName;
    }

    public Integer getUserType() {
        return this.userType;
    }

    public Integer getUserIdentity() {
        return this.userIdentity;
    }

    public Integer getUserState() {
        return this.userState;
    }

    public String getSessionToken() {
        return this.sessionToken;
    }

    public Integer getRoleId() {
        return this.roleId;
    }

    public Set<String> getUri() {
        return this.uri;
    }

    public String getRoleName() {
        return this.roleName;
    }

    public Integer getSysType() {
        return this.sysType;
    }

    public String getSmsSessionId() {
        return this.smsSessionId;
    }

    public List<String> getSubUserIds() {
        return this.subUserIds;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public void setUserType(Integer userType) {
        this.userType = userType;
    }

    public void setUserIdentity(Integer userIdentity) {
        this.userIdentity = userIdentity;
    }

    public void setUserState(Integer userState) {
        this.userState = userState;
    }

    public void setSessionToken(String sessionToken) {
        this.sessionToken = sessionToken;
    }

    public void setRoleId(Integer roleId) {
        this.roleId = roleId;
    }

    public void setUri(Set<String> uri) {
        this.uri = uri;
    }

    public void setRoleName(String roleName) {
        this.roleName = roleName;
    }

    public void setSysType(Integer sysType) {
        this.sysType = sysType;
    }

    public void setSmsSessionId(String smsSessionId) {
        this.smsSessionId = smsSessionId;
    }

    public void setSubUserIds(List<String> subUserIds) {
        this.subUserIds = subUserIds;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof BaseSessionBean)) {
            return false;
        } else {
            BaseSessionBean other = (BaseSessionBean)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                label155: {
                    Object this$userId = this.getUserId();
                    Object other$userId = other.getUserId();
                    if (this$userId == null) {
                        if (other$userId == null) {
                            break label155;
                        }
                    } else if (this$userId.equals(other$userId)) {
                        break label155;
                    }

                    return false;
                }

                Object this$userName = this.getUserName();
                Object other$userName = other.getUserName();
                if (this$userName == null) {
                    if (other$userName != null) {
                        return false;
                    }
                } else if (!this$userName.equals(other$userName)) {
                    return false;
                }

                Object this$userType = this.getUserType();
                Object other$userType = other.getUserType();
                if (this$userType == null) {
                    if (other$userType != null) {
                        return false;
                    }
                } else if (!this$userType.equals(other$userType)) {
                    return false;
                }

                label134: {
                    Object this$userIdentity = this.getUserIdentity();
                    Object other$userIdentity = other.getUserIdentity();
                    if (this$userIdentity == null) {
                        if (other$userIdentity == null) {
                            break label134;
                        }
                    } else if (this$userIdentity.equals(other$userIdentity)) {
                        break label134;
                    }

                    return false;
                }

                label127: {
                    Object this$userState = this.getUserState();
                    Object other$userState = other.getUserState();
                    if (this$userState == null) {
                        if (other$userState == null) {
                            break label127;
                        }
                    } else if (this$userState.equals(other$userState)) {
                        break label127;
                    }

                    return false;
                }

                label120: {
                    Object this$sessionToken = this.getSessionToken();
                    Object other$sessionToken = other.getSessionToken();
                    if (this$sessionToken == null) {
                        if (other$sessionToken == null) {
                            break label120;
                        }
                    } else if (this$sessionToken.equals(other$sessionToken)) {
                        break label120;
                    }

                    return false;
                }

                Object this$roleId = this.getRoleId();
                Object other$roleId = other.getRoleId();
                if (this$roleId == null) {
                    if (other$roleId != null) {
                        return false;
                    }
                } else if (!this$roleId.equals(other$roleId)) {
                    return false;
                }

                label106: {
                    Object this$uri = this.getUri();
                    Object other$uri = other.getUri();
                    if (this$uri == null) {
                        if (other$uri == null) {
                            break label106;
                        }
                    } else if (this$uri.equals(other$uri)) {
                        break label106;
                    }

                    return false;
                }

                Object this$roleName = this.getRoleName();
                Object other$roleName = other.getRoleName();
                if (this$roleName == null) {
                    if (other$roleName != null) {
                        return false;
                    }
                } else if (!this$roleName.equals(other$roleName)) {
                    return false;
                }

                label92: {
                    Object this$sysType = this.getSysType();
                    Object other$sysType = other.getSysType();
                    if (this$sysType == null) {
                        if (other$sysType == null) {
                            break label92;
                        }
                    } else if (this$sysType.equals(other$sysType)) {
                        break label92;
                    }

                    return false;
                }

                Object this$smsSessionId = this.getSmsSessionId();
                Object other$smsSessionId = other.getSmsSessionId();
                if (this$smsSessionId == null) {
                    if (other$smsSessionId != null) {
                        return false;
                    }
                } else if (!this$smsSessionId.equals(other$smsSessionId)) {
                    return false;
                }

                Object this$subUserIds = this.getSubUserIds();
                Object other$subUserIds = other.getSubUserIds();
                if (this$subUserIds == null) {
                    if (other$subUserIds != null) {
                        return false;
                    }
                } else if (!this$subUserIds.equals(other$subUserIds)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(Object other) {
        return other instanceof BaseSessionBean;
    }

    public int hashCode() {
        int result = 1;
        Object $userId = this.getUserId();
        result = result * 59 + ($userId == null ? 43 : $userId.hashCode());
        Object $userName = this.getUserName();
        result = result * 59 + ($userName == null ? 43 : $userName.hashCode());
        Object $userType = this.getUserType();
        result = result * 59 + ($userType == null ? 43 : $userType.hashCode());
        Object $userIdentity = this.getUserIdentity();
        result = result * 59 + ($userIdentity == null ? 43 : $userIdentity.hashCode());
        Object $userState = this.getUserState();
        result = result * 59 + ($userState == null ? 43 : $userState.hashCode());
        Object $sessionToken = this.getSessionToken();
        result = result * 59 + ($sessionToken == null ? 43 : $sessionToken.hashCode());
        Object $roleId = this.getRoleId();
        result = result * 59 + ($roleId == null ? 43 : $roleId.hashCode());
        Object $uri = this.getUri();
        result = result * 59 + ($uri == null ? 43 : $uri.hashCode());
        Object $roleName = this.getRoleName();
        result = result * 59 + ($roleName == null ? 43 : $roleName.hashCode());
        Object $sysType = this.getSysType();
        result = result * 59 + ($sysType == null ? 43 : $sysType.hashCode());
        Object $smsSessionId = this.getSmsSessionId();
        result = result * 59 + ($smsSessionId == null ? 43 : $smsSessionId.hashCode());
        Object $subUserIds = this.getSubUserIds();
        result = result * 59 + ($subUserIds == null ? 43 : $subUserIds.hashCode());
        return result;
    }

    public String toString() {
        return "BaseSessionBean(userId=" + this.getUserId() + ", userName=" + this.getUserName() + ", userType=" + this.getUserType() + ", userIdentity=" + this.getUserIdentity() + ", userState=" + this.getUserState() + ", sessionToken=" + this.getSessionToken() + ", roleId=" + this.getRoleId() + ", uri=" + this.getUri() + ", roleName=" + this.getRoleName() + ", sysType=" + this.getSysType() + ", smsSessionId=" + this.getSmsSessionId() + ", subUserIds=" + this.getSubUserIds() + ")";
    }
}
